package cn.cycleif.entity;

import cn.cycleif.enums.ActionTypeEnum;
import cn.cycleif.enums.CommonStatusEnum;
import cn.cycleif.enums.InboxTypeEnum;
import cn.cycleif.enums.ObjectTypeEnum;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;

/**
 * @Date: 25/2/17-14:04
 * @Desc:
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Notification {
  @TableId(type = IdType.AUTO)
  private Integer          id;
  private Integer          userId;
  private Integer          relateUserId;
  private Integer          objectId;
  private ObjectTypeEnum   objectType;
  private ActionTypeEnum   actionType;
  private InboxTypeEnum    type;
  private Integer          isRead;
  private CommonStatusEnum status;
  private String           content;

  @TableField(fill = FieldFill.INSERT)
  private LocalDateTime createAt;
  @TableField(fill = FieldFill.UPDATE)
  private LocalDateTime updateAt;
}
